<?php
/**
 * Implenta las funciones necesarias para gestionar cristal
 *
 * @author Daniel Cardoza, Gary Dos Santos, Freddy Rodriguez
 */
class DBPuertaDAO {

    private $DBConn = null;

    public function  __construct() {
        $conexion = new conexion();
        $this->DBConn = $conexion->setConnect();
    }

    /**
     * Setea un bloque con la informacion del cristal
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockCondiciones( $plantillaCON , $hBlock ) {
        $this->DBConn->consulta( "SELECT pv.*, cp.CPT_NOMBRE
                                FROM puerta_ventana_cristal pv
                                JOIN costo_puerta cp ON pv.PVC_CPT_ID = cp.CPT_ID
                                WHERE pv.PVC_STATUS = 1" );
        

        while ( $fila = $this->DBConn->extraer_registro() ) {

            $fila['PVC_TIPO'] = "Puerta";

            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }


     /**
     *Devuelve un vector con los precios del id de la ventana que entra por parametro
     * y el colorAluminio es el numero del tipo de aluminio
     *
     * @param <int> $id
     * @param <int> $colorAluminio
     * @return <Array> $precio
     * @test
     *
     */
    public function getPrecio( $id , $colorAluminio ) {

        switch ( $colorAluminio ){
            case "1" :
                $this->DBConn->consulta( "SELECT CPT_ANCHO_COLOR, CPT_ALTO_COLOR, CPT_ACCESORIO
                                        FROM costo_puerta
                                        WHERE CPT_ID = $id
                                        AND CPT_STATUS = 1" );

                if ( $this->DBConn->filasAfectadas() != -1){
                    $fila = $this->DBConn->extraer_registro();
                    $precio['ANCHO_COLOR'] = $fila['CPT_ANCHO_COLOR'];
                    $precio['ALTO_COLOR'] = $fila['CPT_ALTO_COLOR'];
                    $precio['ACCESORIO'] = $fila['CPT_ACCESORIO'];
                    return $precio;
                } else {
                    return false;
                }
                break;

            case "2" :
                $this->DBConn->consulta( "SELECT CPT_ANCHO_OTRO_COLOR, CPT_ALTO_OTRO_COLOR, CPT_ACCESORIO
                                        FROM costo_puerta
                                        WHERE CPT_ID = $id
                                        AND CPT_STATUS = 1" );

                if ( $this->DBConn->filasAfectadas() != -1){
                    $fila = $this->DBConn->extraer_registro();
                    $precio['ANCHO_COLOR'] = $fila['CPT_ANCHO_OTRO_COLOR'];
                    $precio['ALTO_COLOR'] = $fila['CPT_ALTO_OTRO_COLOR'];
                    $precio['ACCESORIO'] = $fila['CPT_ACCESORIO'];
                    return $precio;
                } else {
                    return false;
                }
                break;

        }


    }

        /**
     *Devuelve el precio de la instalacion del id de la ventana que entra por parametro
     *
     * @param <int> $id
     * @return <int> $fila['CSI_PRECIO']
     * @return <bool> false
     * @test
     *
     */
    public function getInstalacion( $nombre ) {
        $this->DBConn->consulta( "SELECT CSI_PRECIO
                            FROM costo_suministro_instalacion
                            WHERE CSI_NOMBRE = '$nombre'
                            AND CSI_TIPO = 1
                            AND CSI_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CSI_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve un vector con los precios del id de la puerta que entra por parametro
     * y el colorAluminio es el numero del tipo de aluminio
     *
     * @param <int> $id
     * @param <int> $colorAluminio
     * @return <Array> $precio
     * @test
     *
     */
    public function getPrecioZocalos() {

        $this->DBConn->consulta( "SELECT CAC_PRECIO
                                        FROM costo_accesorio
                                        WHERE CAC_NOMBRE = 'ZOCALOS'
                                        AND CAC_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CAC_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve un vector con los precios del id de la puerta que entra por parametro
     * y el colorAluminio es el numero del tipo de aluminio
     *
     * @param <int> $id
     * @param <int> $colorAluminio
     * @return <Array> $precio
     * @test
     *
     */
    public function getFrenoOlimpia() {

        $this->DBConn->consulta( "SELECT CAC_PRECIO
                                        FROM costo_accesorio
                                        WHERE CAC_NOMBRE = 'KIT DE PUERTA OLIMPIA'
                                        AND CAC_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CAC_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el precio del silicon
     *
     * @return <int> $precio
     * @test
     *
     */
    public function getSilicon() {

        $this->DBConn->consulta( "SELECT CAC_PRECIO
                                        FROM costo_accesorio
                                        WHERE CAC_NOMBRE = 'SILICON'
                                        AND CAC_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CAC_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve un vector con los precios del id de la puerta que entra por parametro
     * y el colorAluminio es el numero del tipo de aluminio
     *
     * @param <int> $id
     * @param <int> $colorAluminio
     * @return <Array> $precio
     * @test
     *
     */
    public function getFrenoSpeeddy() {

        $this->DBConn->consulta( "SELECT CAC_PRECIO
                                        FROM costo_accesorio
                                        WHERE CAC_NOMBRE = 'KIT DE PUERTA SPEEDDY'
                                        AND CAC_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CAC_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve un vector con los precios del id de la puerta que entra por parametro
     * y el colorAluminio es el numero del tipo de aluminio
     *
     * @param <int> $id
     * @param <int> $colorAluminio
     * @return <Array> $precio
     * @test
     *
     */
    public function getCantoPulido($nombre,$espesor) {

        $this->DBConn->consulta( "SELECT CTV_PRECIO
                                        FROM costo_trabajos_varios
                                        WHERE CTV_NOMBRE = '$nombre'
                                        AND CTV_ESPESOR = '$espesor'
                                        AND CTV_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CTV_PRECIO'];
        } else {
            return false;
        }

    }

    /**
     * Setea un bloque con la informacion de la puerta
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlock( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT *
                            FROM costo_puerta
                            WHERE CPT_STATUS = 1" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $fila['CPT_ANCHO_COLOR'] = number_format( $fila['CPT_ANCHO_COLOR'], 2, ",", "." );
            $fila['CPT_ALTO_COLOR'] = number_format( $fila['CPT_ALTO_COLOR'], 2, ",", "." );
            $fila['CPT_ALTO_OTRO_COLOR'] = number_format( $fila['CPT_ALTO_OTRO_COLOR'], 2, ",", "." );
            $fila['CPT_ANCHO_OTRO_COLOR'] = number_format( $fila['CPT_ANCHO_OTRO_COLOR'], 2, ",", "." );
            $fila['CPT_ACCESORIO'] = number_format( $fila['CPT_ACCESORIO'], 2, ",", "." );
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion de la puerta
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockNombre( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT CPT_ID, CPT_NOMBRE
                            FROM costo_puerta
                            WHERE CPT_STATUS = 1
                            AND CPT_STATUS = 1
                            GROUP BY CPT_NOMBRE
                            ORDER BY CPT_ID ASC" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }


    /**
     * Setea un bloque con la informacion de la puerta P
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockNombrePuertasP( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT CPT_ID, CPT_NOMBRE
                            FROM costo_puerta
                            WHERE CPT_STATUS = 1
                            AND CPT_STATUS = 1
                            AND CPT_TIPO = 2
                            GROUP BY CPT_NOMBRE" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del color de la puerta
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockColor( $plantillaCON , $block, $id ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT CCR_ID, CCR_COLOR
                                FROM costo_cristal
                                WHERE CCR_ESPESOR IN (
                                SELECT PVC_ESPESOR
                                FROM puerta_ventana_cristal
                                WHERE PVC_CPT_ID = $id
                                AND PVC_STATUS = 1)
                                AND CCR_STATUS = 1
                                GROUP BY CCR_COLOR" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del cristal de la puerta
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockCristal( $plantillaCON , $block, $id, $color ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT CCR_ID, CCR_NOMBRE,CCR_COLOR, CCR_ESPESOR
                                FROM costo_cristal
                                WHERE CCR_ESPESOR IN (
                                SELECT PVC_ESPESOR
                                FROM puerta_ventana_cristal
                                WHERE PVC_CPT_ID = $id
                                AND PVC_STATUS = 1)
                                AND CCR_COLOR IN (
                                SELECT CCR_COLOR
                                FROM costo_cristal
                                WHERE CCR_ID = $color
                                AND CCR_STATUS = 1)
                                AND CCR_STATUS = 1
                                GROUP BY CCR_NOMBRE" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del espesor de la puerta
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockEspesor( $plantillaCON , $block, $id, $idCristal ) {

        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT PVC_ID, PVC_ESPESOR
                                FROM puerta_ventana_cristal, costo_cristal
                                WHERE PVC_CPT_ID = $id AND PVC_ESPESOR IN (
                                SELECT CCR_ESPESOR
                                FROM costo_cristal
                                WHERE CCR_ESPESOR IN (
                                SELECT PVC_ESPESOR
                                FROM puerta_ventana_cristal
                                WHERE PVC_CPT_ID = $id AND PVC_STATUS = 1)
                                AND CCR_COLOR IN (
                                SELECT CCR_COLOR
                                FROM Costo_cristal
                                WHERE CCR_ID = $idCristal)
                                AND CCR_NOMBRE IN (
                                SELECT CCR_NOMBRE
                                FROM Costo_cristal
                                WHERE CCR_ID = $idCristal)
                                AND CCR_STATUS = 1
                                GROUP BY CCR_ESPESOR)
                                GROUP BY PVC_ESPESOR");

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     * Setea un bloque con la informacion del esmerilado
     *
     * @param <panel> $plantillaCON
     * @param <block> $block
     * @test
     */
    public function setBlockEsmerilado( $plantillaCON , $block ) {
        $hBlock = $plantillaCON->setBlock( $block );
        $this->DBConn->consulta( "SELECT *
                            FROM costo_trabajos_varios
                            WHERE CTV_TIPO = 3
                            AND CTV_STATUS = 1" );

        while ( $fila = $this->DBConn->extraer_registro() ) {
            $plantillaCON->add( $fila );
            $plantillaCON->concat( $hBlock );
        }

    }

    /**
     *Devuelve el espesor del id de la puerta que entra por parametro
     *
     * @param <int> $id
     * @return <int> $fila['PVC_ESPESOR']
     * @return <bool> false
     * @test
     *
     */
    public function getEspesor( $id ) {
        $this->DBConn->consulta( "SELECT PVC_ESPESOR
                            FROM puerta_ventana_cristal
                            WHERE PVC_ID = $id
                            AND PVC_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['PVC_ESPESOR'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el nombre del id de la puerta que entra por parametro
     *
     * @param <int> $id
     * @return <int> $fila['CPT_NOMBRE']
     * @return <bool> false
     * @test
     *
     */
    public function getNombre( $id ) {
        $this->DBConn->consulta( "SELECT CPT_NOMBRE
                            FROM costo_puerta
                            WHERE CPT_ID = $id
                            AND CPT_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CPT_NOMBRE'];
        } else {
            return false;
        }

    }

    /**
     *Devuelve el contenido del id de la puerta que entra por parametro
     *
     * @param <int> $id
     * @return <int> $fila['CPT_CONTENIDO']
     * @return <bool> false
     * @test
     *
     */
    public function getContenido( $id ) {
        $this->DBConn->consulta( "SELECT CPT_CONTENIDO
                            FROM costo_puerta
                            WHERE CPT_ID = $id
                            AND CPT_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            $fila = $this->DBConn->extraer_registro();
            return $fila['CPT_CONTENIDO'];
        } else {
            return false;
        }

    }

    /**
     *Insertar una Puerta en la base de datos y lo asigna al id del presupuesto
     * que se pasa por parametro
     *
     * @param <Cristal> $cristal
     * @param <int> $PTO_ID
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function setPuerta( Puerta $puerta , $PTO_ID ) {
        $alto = $puerta->getAlto();
        $ancho = $puerta->getAncho();
        $cantidad = $puerta->getCantidad();
        $color = $puerta->getColor();
        $contenido = $puerta->getContenido();
        $cristal = $puerta->getCristal();
        $cristalColor  = $puerta->getCristalColor();
        $esmerilado = $puerta->getEsmerilado();
        $nombre = $puerta->getNombre();
        $precioAccesorio  = $puerta->getPrecioAccesorio();
        $precioAlto  = $puerta->getPrecioAlto();
        $precioAncho  = $puerta->getPrecioAncho();
        $precioCristal  = $puerta->getPrecioCristal();
        $espesor  = $puerta->getEspesor();
        $posicion  = $puerta->getPosicion();
        $instalacion = $puerta->getInstalacion();
        $tipo = $puerta->getTipo();
        $esm = $puerta->getEsmerilado() != "0" ? "CON ESMERILADO" : "";
        $subTotal  = $puerta->calcularSubTotal();

        $this->DBConn->consulta( "INSERT INTO `puerta` (`PTA_NOMBRE`, `PTA_COLOR`, `PTA_CONTENIDO`, `PTA_CRISTAL`,
                                `PTA_CRISTAL_COLOR`, `PTA_ESPESOR`, `PTA_ANCHO`, `PTA_ALTO`,
                                `PTA_PRECIO_ANCHO`, `PTA_PRECIO_ALTO`, `PTA_PRECIO_ACCESORIO`, `PTA_PRECIO_CRISTAL`,
                                `PTA_PRECIO_ESMERILADO`,`PTA_PRECIO_INSTALACION`,`PTA_ESMERILADO`,`PTA_TIPO`, `PTA_CANTIDAD`)
                                VALUES ('$nombre', '$color', '$contenido', '$cristal', '$cristalColor',
                $espesor, $ancho, $alto, $precioAncho, $precioAlto, $precioAccesorio,
                $precioCristal, $esmerilado, $instalacion, '$esm', $tipo, $cantidad);" );

        $this->DBConn->consulta( "SELECT PTA_ID FROM Puerta
                        WHERE PTA_NOMBRE = '$nombre'
                        AND PTA_CRISTAL = '$cristal'
                        AND PTA_COLOR = '$color'
                        AND PTA_CRISTAL_COLOR = '$cristalColor'
                        AND PTA_ESPESOR = $espesor
                        AND PTA_ANCHO = $ancho
                        AND PTA_ALTO = $alto
                        AND PTA_PRECIO_ANCHO = $precioAncho
                        AND PTA_PRECIO_ALTO = $precioAlto
                        AND PTA_PRECIO_ACCESORIO = $precioAccesorio
                        AND PTA_PRECIO_CRISTAL = $precioCristal
                        AND PTA_PRECIO_ESMERILADO = $esmerilado
                        AND PTA_CANTIDAD = $cantidad
                        AND PTA_STATUS = 1
                        ORDER BY PTA_ID DESC " );

        $fila = $this->DBConn->extraer_registro();
        $id = $fila[ 'PTA_ID' ];

        $subTotal = $puerta->calcularSubTotal();
        $this->DBConn->consulta( "INSERT INTO detalle_presupuesto (DPR_SUB_TOTAL,DPR_PTO_ID,DPR_PTA_ID,DPR_POS)
                                VALUES ($subTotal, $PTO_ID, $id,'$posicion')" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Insertar una Puerta en la base de datos y lo asigna al id del presupuesto
     * que se pasa por parametro
     *
     * @param <Cristal> $cristal
     * @param <int> $PTO_ID
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function setPuertaP( Puerta $puerta , $PTO_ID, $subTotal ) {
        $alto = $puerta->getAlto();
        $ancho = $puerta->getAncho();
        $cantidad = $puerta->getCantidad();
        $color = $puerta->getColor();
        $contenido = $puerta->getContenido();
        $cristal = $puerta->getCristal();
        $cristalColor  = $puerta->getCristalColor();
        $esmerilado = $puerta->getEsmerilado();
        $nombre = $puerta->getNombre();
        $precioAccesorio  = $puerta->getPrecioAccesorio();
        $precioAlto  = $puerta->getPrecioAlto();
        $precioAncho  = $puerta->getPrecioAncho();
        $precioCristal  = $puerta->getPrecioCristal();
        $espesor  = $puerta->getEspesor();
        $posicion  = $puerta->getPosicion();
        $instalacion = $puerta->getInstalacion();
        $tipo = $puerta->getTipo();
        $esm = $puerta->getEsmerilado() != "0" ? "CON ESMERILADO" : "";

        $this->DBConn->consulta( "INSERT INTO `puerta` (`PTA_NOMBRE`, `PTA_COLOR`, `PTA_CONTENIDO`, `PTA_CRISTAL`,
                                `PTA_CRISTAL_COLOR`, `PTA_ESPESOR`, `PTA_ANCHO`, `PTA_ALTO`,
                                `PTA_PRECIO_ANCHO`, `PTA_PRECIO_ALTO`, `PTA_PRECIO_ACCESORIO`, `PTA_PRECIO_CRISTAL`,
                                `PTA_PRECIO_ESMERILADO`,`PTA_PRECIO_INSTALACION`,`PTA_ESMERILADO`,`PTA_TIPO`, `PTA_CANTIDAD`)
                                VALUES ('$nombre', '$color', '$contenido', '$cristal', '$cristalColor',
                $espesor, $ancho, $alto, $precioAncho, $precioAlto, $precioAccesorio,
                $precioCristal, $esmerilado, $instalacion, '$esm', $tipo, $cantidad);" );

        $this->DBConn->consulta( "SELECT PTA_ID FROM Puerta
                        WHERE PTA_NOMBRE = '$nombre'
                        AND PTA_CRISTAL = '$cristal'
                        AND PTA_COLOR = '$color'
                        AND PTA_CRISTAL_COLOR = '$cristalColor'
                        AND PTA_ESPESOR = $espesor
                        AND PTA_ANCHO = $ancho
                        AND PTA_ALTO = $alto
                        AND PTA_PRECIO_ANCHO = $precioAncho
                        AND PTA_PRECIO_ALTO = $precioAlto
                        AND PTA_PRECIO_ACCESORIO = $precioAccesorio
                        AND PTA_PRECIO_CRISTAL = $precioCristal
                        AND PTA_PRECIO_ESMERILADO = $esmerilado
                        AND PTA_CANTIDAD = $cantidad
                        AND PTA_STATUS = 1
                        ORDER BY PTA_ID DESC " );

        $fila = $this->DBConn->extraer_registro();
        $id = $fila[ 'PTA_ID' ];

        $this->DBConn->consulta( "INSERT INTO detalle_presupuesto (DPR_SUB_TOTAL,DPR_PTO_ID,DPR_PTA_ID,DPR_POS)
                                VALUES ($subTotal, $PTO_ID, $id,'$posicion')" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Actualiza una puerta
     *
     * @param $_POST $post
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function updatePuerta() {
        extract($_GET);

        $CPT_ANCHO_COLOR = (str_replace(".","",$CPT_ANCHO_COLOR));
        $CPT_ANCHO_COLOR = doubleval(str_replace(",",".",$CPT_ANCHO_COLOR));

        $CPT_ALTO_COLOR = (str_replace(".","",$CPT_ALTO_COLOR));
        $CPT_ALTO_COLOR = doubleval(str_replace(",",".",$CPT_ALTO_COLOR));
        
        $CPT_ANCHO_OTRO_COLOR = (str_replace(".","",$CPT_ANCHO_OTRO_COLOR));
        $CPT_ANCHO_OTRO_COLOR = doubleval(str_replace(",",".",$CPT_ANCHO_OTRO_COLOR));

        $CPT_ALTO_OTRO_COLOR = (str_replace(".","",$CPT_ALTO_OTRO_COLOR));
        $CPT_ALTO_OTRO_COLOR = doubleval(str_replace(",",".",$CPT_ALTO_OTRO_COLOR));

        $CPT_ACCESORIO = (str_replace(".","",$CPT_ACCESORIO));
        $CPT_ACCESORIO = doubleval(str_replace(",",".",$CPT_ACCESORIO));
        $this->DBConn->consulta( "SELECT CPT_NOMBRE, CPT_COLOR
                                FROM costo_puerta
                                WHERE CPT_ID = $id;");

        $fila = $this->DBConn->extraer_registro();
        $nombreOld = $fila[ 'CPT_NOMBRE' ];
        $colorOld = $fila[ 'CPT_COLOR' ];

        $this->DBConn->consulta( "UPDATE costo_puerta
                                SET CPT_NOMBRE = '$CPT_NOMBRE'
                                WHERE CPT_NOMBRE = '$nombreOld'" );

        $this->DBConn->consulta( "UPDATE costo_puerta
                                SET CPT_COLOR = '$CPT_COLOR'
                                WHERE CPT_COLOR = '$colorOld'" );

        $this->DBConn->consulta( "UPDATE costo_puerta
                                SET CPT_CONTENIDO = '$CPT_CONTENIDO',
                                CPT_ANCHO_COLOR = $CPT_ANCHO_COLOR,
                                CPT_ALTO_COLOR = $CPT_ALTO_COLOR,
                                CPT_ANCHO_OTRO_COLOR = $CPT_ANCHO_OTRO_COLOR,
                                CPT_ALTO_OTRO_COLOR = $CPT_ALTO_OTRO_COLOR,
                                CPT_ACCESORIO = $CPT_ACCESORIO
                                WHERE CPT_ID = $id" );
        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Elimina un Puerta
     *
     * @param <int> $id
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function eliminarPuerta($id) {

        $this->DBConn->consulta( "UPDATE costo_puerta
                                SET CPT_STATUS = 0
                                WHERE CPT_ID = $id" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *Agrega un costoPuerta
     *
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function setCostoPuerta() {
        extract($_GET);

        $CPT_ANCHO_COLOR = (str_replace(".","",$CPT_ANCHO_COLOR));
        $CPT_ANCHO_COLOR = doubleval(str_replace(",",".",$CPT_ANCHO_COLOR));

        $CPT_ALTO_COLOR = (str_replace(".","",$CPT_ALTO_COLOR));
        $CPT_ALTO_COLOR = doubleval(str_replace(",",".",$CPT_ALTO_COLOR));

        $CPT_ANCHO_OTRO_COLOR = (str_replace(".","",$CPT_ANCHO_OTRO_COLOR));
        $CPT_ANCHO_OTRO_COLOR = doubleval(str_replace(",",".",$CPT_ANCHO_OTRO_COLOR));

        $CPT_ALTO_OTRO_COLOR = (str_replace(".","",$CPT_ALTO_OTRO_COLOR));
        $CPT_ALTO_OTRO_COLOR = doubleval(str_replace(",",".",$CPT_ALTO_OTRO_COLOR));

        $CPT_ACCESORIO = (str_replace(".","",$CPT_ACCESORIO));
        $CPT_ACCESORIO = doubleval(str_replace(",",".",$CPT_ACCESORIO));
        $this->DBConn->consulta( "INSERT INTO costo_puerta (CPT_NOMBRE, CPT_COLOR, CPT_CONTENIDO
                                , CPT_ANCHO_COLOR, CPT_ALTO_COLOR, CPT_ANCHO_OTRO_COLOR
                                , CPT_ALTO_OTRO_COLOR, CPT_ACCESORIO, CPT_OTRO_COLOR, CPT_TIPO)
                                VALUES ('$CPT_NOMBRE','$CPT_COLOR', '$CPT_CONTENIDO',$CPT_ANCHO_COLOR,
                $CPT_ALTO_COLOR, $CPT_ANCHO_OTRO_COLOR, $CPT_ALTO_OTRO_COLOR,
                $CPT_ACCESORIO, 'OTRO_COLOR', 1)" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }

    /**
     *modifica todos los precios en un porcentaje dado
     *
     * @return <bool> true
     * @return <bool> false
     * @test
     *
     */
    public function updatePrecioPorPorcentaje() {
        extract($_GET);

        $porcentaje = $porcentaje/100;
        $this->DBConn->consulta( "UPDATE costo_puerta
                                SET CPT_ANCHO_COLOR = CPT_ANCHO_COLOR + (CPT_ANCHO_COLOR * $porcentaje),
                                CPT_ALTO_COLOR = CPT_ALTO_COLOR + (CPT_ALTO_COLOR * $porcentaje),
                                CPT_ALTO_OTRO_COLOR = CPT_ALTO_OTRO_COLOR + (CPT_ALTO_OTRO_COLOR * $porcentaje),
                                CPT_ANCHO_OTRO_COLOR = CPT_ANCHO_OTRO_COLOR + (CPT_ANCHO_OTRO_COLOR * $porcentaje),
                                CPT_ACCESORIO = CPT_ACCESORIO + (CPT_ACCESORIO * $porcentaje)
                                WHERE CPT_STATUS = 1" );

        if ( $this->DBConn->filasAfectadas() != -1) {
            return true;
        } else {
            return false;
        }

    }
}
?>